package com.industrial.premu.mapper.sqsj;


import com.industrial.premu.domain.sqsj.PreMuImportShuiwu;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 亩产导入数据-税务局Mapper接口
 *
 * @author ruoyi
 * @date 2024-01-25
 */
public interface PreMuImportShuiwuMapper
{
    /**
     * 查询亩产导入数据-税务局
     *
     * @param id 亩产导入数据-税务局主键
     * @return 亩产导入数据-税务局
     */
    public PreMuImportShuiwu selectPreMuImportShuiwuById(String id);

    /**
     * 查询亩产导入数据-税务局列表
     *
     * @param preMuImportShuiwu 亩产导入数据-税务局
     * @return 亩产导入数据-税务局集合
     */
    public List<PreMuImportShuiwu> selectPreMuImportShuiwuList(PreMuImportShuiwu preMuImportShuiwu);

    /**
     * 新增亩产导入数据-税务局
     *
     * @param preMuImportShuiwu 亩产导入数据-税务局
     * @return 结果
     */
    public int insertPreMuImportShuiwu(PreMuImportShuiwu preMuImportShuiwu);

    /**
     * 修改亩产导入数据-税务局
     *
     * @param preMuImportShuiwu 亩产导入数据-税务局
     * @return 结果
     */
    public int updatePreMuImportShuiwu(PreMuImportShuiwu preMuImportShuiwu);

    /**
     * 删除亩产导入数据-税务局
     *
     * @param id 亩产导入数据-税务局主键
     * @return 结果
     */
    public int deletePreMuImportShuiwuById(String id);

    /**
     * 批量删除亩产导入数据-税务局
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deletePreMuImportShuiwuByIds(String[] ids);

    List<String> getImportShuiwuExistList(@Param("year") String year, @Param("usccList")  List<String> usccList);

    int batchSave(List<PreMuImportShuiwu> addImportList);

    int batchUpdateByUscc(@Param("year") String year, @Param("list")  List<PreMuImportShuiwu> updateImportList);

    void removeData(PreMuImportShuiwu params);

    PreMuImportShuiwu selectPreMuImportShuiwuInfoByUsccAndYears(PreMuImportShuiwu preMuImportShuiwu);

    /**
     * 查询已存在的企业
     * @param usccs
     * @param years
     * @return
     */
    List<PreMuImportShuiwu> selectPreMuImportShuiwuInfoByUsccsAndYears(@Param("uscc") List<String> usccs, @Param("years") String years);

    void batchUpdateById(@Param("list") List<PreMuImportShuiwu> updateDataList);

    void batchInsert(@Param("list") List<PreMuImportShuiwu> insertDataList);

}